package cn.iocoder.yudao.module.of.controller.admin.documentinfo.vo;

import cn.hutool.core.date.DateTime;
import lombok.*;

import java.time.LocalDate;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 公文信息分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class DocumentInfoPageReqVO extends PageParam {

    @Schema(description = "送文单位ID", example = "21903")
    private Long sendDocDeptId;

    @Schema(description = "送文单位I名称", example = "芋艿")
    private String sendDocDeptName;

    @Schema(description = "收文日期")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
    private LocalDate[] receiptDocDate;

    @Schema(description = "公文编号")
    private String docCode;

    @Schema(description = "公文名称", example = "李四")
    private String docName;

    @Schema(description = "收件人ID", example = "28245")
    private Long receiptUserId;

    @Schema(description = "收入人姓名", example = "张三")
    private String receiptUserName;

    @Schema(description = "经办人ID", example = "24672")
    private Long handleUserId;

    @Schema(description = "经办人姓名", example = "芋艿")
    private String handleUserName;

    @Schema(description = "附件")
    private String attachs;

    @Schema(description = "主办部门ID", example = "16074")
    private Long mainRespDeptId;

    @Schema(description = "主办部门名称", example = "赵六")
    private String mainRespDeptName;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private DateTime[] createTime;

    @Schema(description = "状态")
    private Integer status;

}